// Header guard
#ifndef LOGGER_H
#define LOGGER_H

#include <fstream>
#include <string.h>
using namespace std;

class logger {
	public:
		// Constructor
		logger(char *filename, string debuglevel);

		// Deconstructor
		~logger();

		/*
			Method to print debug statements
				Only prints a debug statement if the priority of the
				debug statement is equal to or higher than the overall
				debug level.
			Example: I want to send a string "Hello there" with 
				debug priority c (to signify general debug statement)
				debug("Hello there", "c");
		*/
		void debug(string logline, string logdebug);
	private:
	  	// Holds the debug level which is initialized 
	  	// when logger is created
	  	string debuglevel;
	  	
	  	// The output file stream
		ofstream m_stream;
};

// End guard
#endif
